package com.erp.gather.domain.bo;

import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.core.web.oldDomain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 卖家在线商品SKU;参考AE-商品：发布产品信息（aliexpress.postproduct.redefining.postaeproduct）业务对象 erp_seller_store_product_sku
 *
 * @author erp
 * @date 2023-03-28
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class ErpSellerStoreProductSkuBo extends BaseEntity {

    /**
     * 主键
     */
    @NotNull(message = "主键不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 卖家商品ID
     */
    private Long sellerStoreProductId;

    /**
     * 店铺商品ID
     */
    private Long aeProductId;

    /**
     * sku code
     */
    private String skuCode;

    /**
     * 店铺商品SKUID
     */
    private String aeProductSkuId;

    /**
     * sku名称
     */
    private String skuName;

    /**
     * sku主图
     */
    private String skuImage;

    /**
     * sku套图;sku套图 3：4
     */
    private String imageUrlList;

    /**
     * 长或直径;保留三位小数，单位：厘米
     */
    private BigDecimal skuLength;

    /**
     * 宽;保留三位小数，单位：厘米
     */
    private BigDecimal skuWidth;

    /**
     * 高;保留三位小数，单位：厘米
     */
    private BigDecimal skuHeight;

    /**
     * sku重量;单个产品加包装的重量，只能为整数，单位：克
     */
    private Integer skuWeight;

    /**
     * sku价格
     */
    private String skuPrice;

    /**
     * sku库存
     */
    private Long skuStock;

    /**
     * sku日常促销价
     */
    private String skuDiscountPrice;

    /**
     * sku分国家的日常促销价
     */
    private String skuNationalDiscountPrice;

    /**
     * sku属性ID集合;单组合，如"颜色：红色"存储"3:4"，多组合，如"颜色：红色；内存：256M"存储为"3:4;2:5"
     */
    private String skuPropertyIds;
    /**
     * Sku库存,数据格式有货true，无货false；至少有一条sku记录是有货的。
     */
    private String isSkuStock ;
    /**
     * Sku属性对象list，允许1-3个sku属性对象，按sku属性顺序排放。sku属性从类目属性接口getAttributesResultByCateId获取。该项值输入sku属性，不能输入普通类目属性。注意，sku属性是有顺序的，必须按照顺序存放。
     */
    private String skuProperty;
    /**
     * 乐观锁
     */
    private String revision;


}
